CANON semble produire de plus en plus de pilotes d'impression et de numérisation pour GNU/Linux. Cette page a pour but de vous aider à vous y retrouver et à installer le bon pilote. Trois options sont possibles.
Pour pouvoir installer une imprimante via une connexion réseau, il faut installer le paquet cups-backend-bjnp
note : éventuellement, dans les propriétés de l'imprimante, préciser l'URI du périphérique sous :
bjnp://a.b.c.d
Il se peut que, pour votre imprimante, les pilotes soient déjà pré-installés avec Ubuntu. Étant facile à mettre en œuvre et susceptible de vous simplifier grandement la vie, vous avez tout intérêt à essayer dans un premier temps cette méthode des pilotes pré-installés.
Le plus simple et le plus rapide pour installer un pilote Canon est d'utiliser un dépôt dédié, ce qui est le cas pour Canon. Il existe deux dépôts proposant la prise en charge de nombreuses imprimantes.
Pour Ubuntu 20 Focal, le PPA de thierry-f :
sudo add-apt-repository ppa:thierry-f/fork-michael-gruz
sudo apt update
sudo apt install cnijfilter2 scangearmp2
Ensuite rechercher son driver et l'installer, par exemple pour une PIXMA MG3100:
apt search mg3100
sudo apt install cnijfilter-mg3100series
Si les dépôts ci-dessus n'ont pas satisfaits à vos besoins, vous pouvez toujours trouver le pilote de votre imprimante sur le site officiel de Canon: Centre de Téléchargement Canon. Si jamais vous ne trouvez pas ce qu'il vous faut sur le site "Europe", essayez la Suisse, l'Australie ou encore le Japon.
Dans l'archive téléchargée en .tar, vous avez généralement deux versions à votre disposition, une versions Debian et une version RPM. La version qui nous intéresse est la version Debian/Ubuntu (Pour l'archive en .tar.gz, tout est prévu directement pour Debian/Ubuntu).
Pour installer le pilote proprement et de manière stable dans Ubuntu, il suffit d'exécuter le script install.sh contenu dans l'archive. (Ce fichier script est normalement en mode exécutable par défaut. Vous n'avez donc pas à modifier ses propriétés).
MG5200series-printer_driver.tar téléchargée dans le dossier Téléchargements de votre dossier personnel. À vous d'adapter en fonction. MG5200series-printer_driver.tar que vous venez de télécharger (Si c'est une archive tar.gz passez directement au point 3) : cd Téléchargements && tar xvf ~/Téléchargements/MG5200series-printer_driver.tar
cd MG5200series-printer_driver
cnijfilter-mg5200series-3.90-deb.tar.gz. Extraire cette archive. tar xvzf cnijfilter-mg5200series-3.90-deb.tar.gz
Une fois extraite, vous obtiendrez un dossier du nom du pilote avec à l'intérieur un fichier script intitulé install.sh. C'est ce script qu'il faut exécuter pour avoir une installation propre.
cd cnijfilter-mg5200series-3.90-deb
sudo ./install.sh
Une erreur s'est produite. Impossible d'identifier le gestionnaire de paquets.
Pas d'inquiétude, ce bug est dû au paquet rpm installé dans Ubuntu.
Si l'installation retourne cette erreur ou l'une de celles-ci : "..bad-loop-variable..", absence des librairies libpng12-0, libtiff4, libjpeg62….
- Placez-le dans le dossier d'installation (cnijfilter-mgXX00series-x.xx-deb) extraire le contenu de l' archive cnj-libs.tar, puis double-cliquer sur l’icône Cnj-run, ou exécuter ce script :
sudo ./install.sh
L'utilitaire Cnj-libs met à jour les librairies manquantes et lance la version corrigée du programme d'installation du pilote.
Vous pouvez également consulter le chapitre Problèmes connus -> Install.sh ne s'exécute pas.
Suivez les indications du script jusqu'à finaliser la configuration de l'imprimante.
/usr/share/ppd/ ou /usr/share/cups/model/ ou encore dans /etc/cups/ppd/, selon le pilote Canon utilisé.Par exemple:
/etc/cups/ppd/MG5300LAN.ppd/etc/cups/ppd//usr/share/ppd//etc/cups/ppd/Remplacer :
*OpenUI *Resolution/Output Resolution: PickOne *DefaultResolution: 600dpi *Resolution 600dpi/600 dpi: "<</HWResolution[600 600]>>setpagedevice" *CloseUI: *Resolution
Par :
*OpenUI *Resolution/Output Resolution: PickOne *DefaultResolution: 600dpi *Resolution 300dpi/300 dpi: "<</HWResolution[300 300]>>setpagedevice" *Resolution 600dpi/600 dpi: "<</HWResolution[600 600]>>setpagedevice" *Resolution 1200dpi/1200 dpi: "<</HWResolution[1200 1200]>>setpagedevice" *Resolution 2400dpi/2400 dpi: "<</HWResolution[2400 2400]>>setpagedevice" *Resolution 2400x4800dpi/4800 dpi: "<</HWResolution[2400 4800]>>setpagedevice" *Resolution 2400x9600dpi/9600 dpi: "<</HWResolution[2400 9600]>>setpagedevice" *CloseUI: *Resolution
Remplacer:
*OpenUI *ColorModel/Color Model: PickOne *DefaultColorModel: rgb *ColorModel rgb/RGB: "<</cupsColorOrder 0/cupsColorSpace 1/cupsCompression 0/cupsBitsPerColor 8>>setpagedevice" *CloseUI: *ColorModel
*OpenUI *ColorModel/Color Model: PickOne *DefaultColorModel: rgb *ColorModel rgb/RGB: "<</cupsColorOrder 0/cupsColorSpace 1/cupsCompression 0/cupsBitsPerColor 8>>setpagedevice" *ColorModel Gray/Grayscale: "<</cupsColorSpace 0/cupsColorOrder 0>>setpagedevice" *CloseUI: *ColorModel
*OpenUI *ColorModel/Color Model: PickOne *DefaultColorModel: rgb *ColorModel rgb/RGB: "<</cupsColorOrder 0/cupsColorSpace 1/cupsCompression 0/cupsBitsPerColor 8>>setpagedevice" *ColorModel Gray/Grayscale: "<</cupsColorSpace 0/cupsColorOrder 0>>setpagedevice" *ColorModel Black/Inverted Grayscale: "<</cupsColorSpace 3/cupsColorOrder 0>>setpagedevice" *ColorModel CMY/CMY Color: "<</cupsColorSpace 4/cupsColorOrder 0>>setpagedevice" *ColorModel CMYK/CMYK: "<</cupsColorSpace 6/cupsColorOrder 0>>setpagedevice" *ColorModel KCMY/KCMY: "<</cupsColorSpace 8/cupsColorOrder 0>>setpagedevice" *CloseUI: *ColorModel
Ajoutez simplement ceci en fin de fichier :
*OpenUI *CNQuality/Quality: PickOne *DefaultCNQuality: 3 *CNQuality 2/High: "2" *CNQuality 3/Normal: "3" *CNQuality 4/Standard: "4" *CloseUI: *CNQuality
Ajoutez ceci en fin de fichier :
>*OpenUI *CNGrayscale/Grayscale: PickOne >*DefaultCNGrayscale: false >*CNGrayscale false/Off: "false" >*CNGrayscale true/On: "true" >*CloseUI: *CNGrayscale
Pour certaines imprimantes vous avez à votre disposition, un logiciel de maintenance.
Vous pouvez le lancer en saisissant dans un terminal la commande suivante (remplacez MP140 par votre modèle) :
cngpij -P MP140
On peut nettoyer les buses, régler les paramètres d'impression…
Pour gérer les têtes d'impression, saisir dans un terminal la commande suivante :
cngpijmonmp140 MP140
Sous 64 bits vous devrez installer le paquet libgtk3-nocsd0:i386. Une autre alternative est ink. Il s'utilise également en ligne de commande. Pour plus d'information voir la page sursourceforge.
Le logiciel de numérisation Canon pour les multifonctions est fourni avec le paquet scangearmp-common téléchargeable sur le site Canon.
Mais le plus simple est d'utiliser le dépôt canon dédié, et d'installer le paquet scangearmp correspondant.
Voir ce post du forum.
Certaines multifonctions ne fonctionnent qu'avec le pilote téléchargé sur le site Canon. Pour l'installer suivez la même procédure que pour l'impression. Puis lancez l'application "scangear" depuis votre menu des applications. Il est également possible de l'ouvrir en ligne de commande:
scangear
ou
scangearmp
ou
scangearmp2
Utilisez la tabulation pour connaître le nom exact. Il peut arriver également qu'il n'y ai pas d'entrée dans les menus, pour cela vous pouvez en créer une comme indiqué ici.
Voici un modèle de raccourci-lanceur nommé Scanner-canon que vous pouvez enregistrez dans le dossier /usr/share/applications (N'oubliez pas d'adapter la ligne exec) :
[Desktop Entry] Type=Application Exec=/usr/bin/scangearmp2 StartupNotify=true Comment[fr_FR]=Scanner Canon GenericName=Scanner Canon Name=Scanner Canon GenericName[fr]=Scanner Canon Name[fr]=Scanner Canon GenericName[en]=Scanner Canon Name[en]=Scanner Canon Categories=Application;Graphics;GTK;RasterGraphics;Scanning;OCR;2DGraphics; Icon=scanner
Tout d'abord suivez la partie I du wiki sur les scanners USB.
Ensuite Installez les paquets libtiff4 build-essential xsane.
Pour les problèmes liés à libtiff4 voir ici.
Enfin reportez-vous à la page des scanners non reconnus.
Pour les scanners Canon sur port parallèle il existe également ce tutoriel: Scanners canon branchés sur port parallèle
Si le paquet rpm est installé dans Ubuntu, lors de l'exécution du script install.sh vous obtiendrez ceci :
Une erreur s'est produite. Impossible d'identifier le gestionnaire de paquets.
Il va falloir remédier à cela en modifiant le fichier script d'installation du pilote install.sh.
1. Ouvrez-le avec un éditeur de texte et recherchez le passage suivant :
C_FUNC_get_system() { local c_system_rpm="" local c_system_deb="" ## Judge is the distribution supporting rpm? ## #rpm --version 1> /dev/null 2>&1 #c_system_rpm=$? ## Judge is the distribution supporting dpkg(debian)? ## dpkg --version 1> /dev/null 2>&1 c_system_deb=$? ## rpm and deb are error, or rpm and deb are no error, is error ## if [ $c_system_rpm = 0 -a $c_system_deb = 0 ] || [ $c_system_rpm != 0 -a $c_system_deb != 0 ]; then printf "$L_INST_COM_01_02" return $C_ERR_CODE else if test $c_system_rpm -eq 0; then C_system="rpm" C_arch32="i386" C_arch64="x86_64" else C_system="deb" C_arch32="i386" C_arch64="amd64" fi fi return 0 }
2. Remplacer tout ce passage par :
C_FUNC_get_system() { local c_system_rpm="" local c_system_deb="" ## Judge is the distribution supporting dpkg(debian)? ## dpkg --version 1> /dev/null 2>&1 c_system_deb=$? C_system="deb" C_arch32="i386" C_arch64="amd64" return 0 }
3. Enregistrer et fermer le fichier ainsi modifié. Vous devriez alors pouvoir relancer le fichier script d'installation sans tomber sur le message d'erreur.
Pour Trusty 14.04 et suivantes, la dépendance libtiff4 a été supprimée des dépôts officiels et remplacée par sa nouvelle version: libtiff5. Pour résoudre ce problème, vous pouvez télécharger libtiff4 depuis les archives Ubuntu selon votre architecture matérielle:
Certains pilotes propriétaires nécessitent l'indispensable bibliothèque ia32. (Cas d'une imprimante canon sensys mf8580cdw). Pour installer celle-ci:
Vous pourrez trouver ici de nombreux liens vers des tutoriels adaptés en fonction des différents modèles d'imprimante Canon.
Contributeurs: jaaf64; fabux; zaeggu; L'Africain ; cafecho